package com.ruoyi.order.mapper;

import com.ruoyi.order.domain.OrderPk;

import java.util.List;

/**
 * PK订单表 数据层
 * 
 * @author ruoyi
 */
public interface OrderPkMapper
{
    /**
     * 根据条件分页查询PK订单列表
     * 
     * @param orderPk PK订单信息
     * @return PK订单信息集合信息
     */
    public List<OrderPk> selectOrderPkList(OrderPk orderPk);

    /**
     * 通过PK订单号查询PK订单
     * 
     * @param orderNo PK订单号
     * @return PK订单对象信息
     */
    public OrderPk selectOrderPkByOrderNo(String orderNo);

    /**
     * 通过店员ID查询PK订单
     *
     * @param userId 店员ID
     * @return PK订单对象信息
     */
    public OrderPk selectOrderPkByUserId(Long userId);

    /**
     * 查询店员在准备中（未开始） 进行中的订单数量
     *
     * @param employeeUserId 店员ID
     * @return 结果
     */
    public Integer countOrderPkByEmployeeId(Long employeeUserId);

    /**
     * 新增PK订单信息
     * 
     * @param orderPk PK订单信息
     * @return 结果
     */
    public int insertOrderPk(OrderPk orderPk);

    /**
     * 修改PK订单信息
     * 
     * @param orderPk PK订单信息
     * @return 结果
     */
    public int updateOrderPk(OrderPk orderPk);

    /**
     * 修改PK订单信息 - 进度信息
     *
     * @return 结果
     */
    public void updateOrderPkProgram();

    /**
     * 通过PK订单号删除PK订单
     * 
     * @param orderNo PK订单号
     * @return 结果
     */
    public int deleteOrderPkByOrderNo(String orderNo);

    /**
     * 批量删除PK订单信息
     * 
     * @param orderNos 需要删除的PK订单号
     * @return 结果
     */
    public int deleteOrderPkByOrderNos(String[] orderNos);
}
